Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
By Chapel
Brought to you by these cool pieces of software:
* [[Twine|http://twinery.org/]]
* [[SugarCube|http://www.motoslave.net/sugarcube/]]
* [[Tweego|https://www.motoslave.net/tweego/]]
* [[Twee 3 Language Tools|https://marketplace.visualstudio.com/items?itemName=cyrusfirheir.twee3-language-tools]]
* [[Pronouncing.js|https://github.com/aparrish/pronouncingjs]]
* [[The CMU Pronouncing Dictionary|http://www.speech.cs.cmu.edu/cgi-bin/cmudict]]
Featuring beats from these producers:
* [[Xela|https://twitter.com/XelaOnDaTrack]]
* [[Rome|https://www.instagram.com/rome_youtube/]]
Thank you for playing!<div id="title-bar">
<span id="gold">0 g</span>
<h1>Main Menu</h1>
<span id="mute">
<img src="mute.png">
</span>
</div>
<main>
<div id="passages"></div>
</main>
<div id="drawer" class="closed">
<div id="pull">✎ Compose…</div>
<div id="drawer-container">
<div id="drawer-content">
<span id="remaining">300</span>
<textarea id="notebook" maxlength="300" placeholder="Write something…" spellcheck="value"></textarea>
<p><button title="Perform the poem you've written!" id="read-it">📖 Read it!</button></p>
</div>
<div id="sidebar">
<ul>
<li><a title="About" id="menu-about" href="javascript:void(0);">About</a></li>
<!-- <li><a title="Help" id="menu-help" href="javascript:void(0);">Help</a></li> -->
<li><a title="Saves" id="menu-saves" href="javascript:void(0);">Saves</a></li>
<li><a title="Restart" id="menu-restart" href="javascript:void(0);">Restart</a></li>
<li><a title="Settings" id="menu-settings" href="javascript:void(0);">Settings</a></li>
</ul>
</div>
</div>
</div>/* VARS */
<<set $poems to []>>
<<set $gold to 0>>
<<set $nobles to 0>>
<<set $commoners to 0>>
<<set $king to 0>>
<<set $song to '2'>>
<<set $title to 'Main Menu'>>
/* MUSIC */
<<cacheaudio "1" "assets/1.mp3">>
<<cacheaudio "2" "assets/2.mp3">>
<<cacheaudio "3" "assets/3.mp3">>
<<cacheaudio "4" "assets/4.mp3">>
<<cacheaudio "5" "assets/5.mp3">>
<<cacheaudio "6" "assets/6.mp3">>
/* MISC */
<<newmeter 'quality' 0>>
<<colors '#f0f' '#ccc' '#888'>>
<<sizing '33rem' '2rem'>>
<<label "$score%" "#111" center>>
<<animation 1s>>
<</newmeter>>{title: Main Menu}\
<div class='centered'>\
<h1 id='main-title'>Bard Simulator 2K21</h1>\
A text-based poetry game.
</div>
<<nobr>>
<<act "Continue">>
<<tooltip "Resume from the last autosave.">>
<<if Save.autosave.has()>>
<<run Save.autosave.load()>>
<<else>>
<<run UI.alert('No autosave was found!')>>
<</if>>
<</act>>
<<act "Saves">>
<<tooltip "Load a saved game.">>
<<run UI.saves()>>
<</act>>
<<act "New Game">>
<<tooltip "Start a new game from the beginning.">>
<<goto "intro-1">>
<</act>>
<<act "Settings">>
<<tooltip "Configure the game's settings.">>
<<run UI.settings()>>
<</act>>
<<act "About">>
<<tooltip "View the game's credits and some other info.">>
<<script>>
Dialog.setup('About', 'about');
Dialog.wiki(Story.has('about-menu') ? Story.get('about-menu').text : 'Whoops...');
Dialog.open();
<</script>>
<</act>>
<</nobr>>{title: Just Outside the City}\
<<audio "2" volume 1 loop play>><<set $song to '2'>>\
You've been traveling for almost ten days when you finally spot the city of Didd in the distance, capital of the Kingdom of Didd (and perhaps the entirety of the kingdom, at that), and not a nice place from what you've heard. But it's the only place this far from the civilized lands you've come from, at least the only place with a name, and you're tired and your rations won't make it another week. Maybe there'll be some gold to made here, at least.
Soon you come to stand before the massive gates of the city, held together by rusty iron hinges. The gate was probably once a lovely red, but the paint is now a sun-baked pink and peeling at the edges. The sentries standing next to the gate are no more impressive, a skinny, pimpled youth whose pants are an inch too short and older gentleman with a pot belly sitting on the ground nearby.
They see you coming from afar and the older man jumps up. They try to look as intimidating at they can, standing shoulder to shoulder before the great pink gate and clutching their spears tightly.
<<act "Approach the gates.">><<goto "intro-2">><</act>>The older man speaks first, and shouts loudly even though you're only a few yards away by this point. "This is the royal city of Didd, capital of the mighty land of Didd and seat of his majesty, King Derwin! State your business, traveler!"
The tall man grins. "Hello, there!"
You greet the two men, and explain that you are merely a wandering bard, swept to their doorstep on the wind.
"That so?" the old man says. He looks over at his comrade. "A fanciful tale. There are no bards in all of Didd as far as I have heard. And such a stupid tale is exactly what a spy or a brigand might say."
You tell him you're not from Didd and assure you him you are, in fact, a bard.
The tall man seems pleasant enough, smiling and nodding as you speak. The older man's frown never wavers, however.
"Caught in a lie!" the older sentry says. "Now your story is shifting! If you think I'm fool enough to fall for such a thing, you've another thing coming."
<<act "Ask him how you can convince him.">><<goto "intro-3">><</act>><div id='stretcher'></div>\
<<set $read to $poems.last().trim().replace(/\n{2,}/g, '\n\n').replace(/ +/g, ' ')>>\
@@#popover-out;
<<fadein 1s>>You prepare to read your poem…<</fadein>>
<<fadein 1s 1s>><<link "Continue">>
<<replace "#popover-out">>
<<fadein 2s>><<= $read>><</fadein>>
<<fadein 1s 2s>><<link "Continue">>
<<replace "#popover-out">>
<<fadein 1s>>?reaction
<<showmeter 'quality' 0>><</fadein>>
<<timed 1s>><<updatemeter 'quality' `Math.clamp($score / 100, 0, 1)`>><</timed>>
<<fadein 1s 2s>>\
<<set $href to 'https://twitter.com/share?url=https://chapel.itch.io/bard&text=' + encodeURIComponent("I made this poem in Bard Simulator 2K21:\n\n" + $read + '\n\n') + '&hashtags=bardsimulator2k21'>>\
<a title="Share your poem on Twitter!" class="tweet-this" target="_blank" @href="$href" class="twitter-share-button"><img src="tweet.png"> Tweet Your Poem</a>
<<dl $read>>
<<link "Continue">><<run Dialog.close()>><<updatemeter 'quality' 0>><<unset $read, $href>><</link>><</fadein>>
<</replace>>
<</link>><</fadein>>
<</replace>>
<</link>><</fadein>>
@@<div id='stretcher'></div>\
<<set $read to $poems.last().trim().replace(/\n{2,}/g, '\n\n').replace(/ +/g, ' ')>>\
<<fadein 1s>>?reaction
<<showmeter 'quality' 0>><</fadein>>
<<timed 1s>><<updatemeter 'quality' `Math.clamp($score / 100, 0, 1)`>><</timed>>
<<fadein 1s 2s>>\
<<set $href to 'https://twitter.com/share?url=https://chapel.itch.io/bard&text=' + encodeURIComponent("I made this poem in Bard Simulator 2K21:\n\n" + $read + '\n\n') + '&hashtags=bardsimulator2k21'>>\
<a title="Share your poem on Twitter!" class="tweet-this" target="_blank" @href="$href" class="twitter-share-button"><img src="tweet.png"> Tweet Your Poem</a>
<<dl $read>>
<<link "Continue">><<run Dialog.close()>><<updatemeter 'quality' 0>><<unset $read, $href>><</link>>\
<</fadein>><<silently>>
<<read>>
<<if not _poem.isCouplet()>>
<<goto "intro-not-couplet">>
<<elseif not _poem.rhymingPatternMatches('AA')>>
<<set $score to 20 + random(10)>>
<<if _poem.isBalanced()>>
<<set $score += 25>>
<</if>>
<<if _poem.isPentameter()>>
<<set $score += 20>>
<<elseif _poem.x_ameter() >= 3 and _poem.x_ameter() < 8>>
<<set $score += 10>>
<</if>>
<<run $poems.push(_input)>>
<<if $poems.length > 10>>
<<run $poems.shift()>>
<</if>>
<<popover 'opaque' 'noclick'>><<include `settings.quickReading ? 'dramatic-reading-quick' : 'dramatic-reading'`>><</popover>>
<<goto "intro-not-rhymed">>
<<else>>
<<set $score to 40 + random(10)>>
<<if _poem.isBalanced()>>
<<set $score += 25>>
<</if>>
<<if _poem.isPentameter()>>
<<set $score += 20>>
<<elseif _poem.x_ameter() >= 3 and _poem.x_ameter() < 8>>
<<set $score += 10>>
<</if>>
<<run $poems.push(_input)>>
<<if $poems.length > 10>>
<<run $poems.shift()>>
<</if>>
<<run GUI.notebook.empty()>>
<<popover 'opaque' 'noclick'>><<include `settings.quickReading ? 'dramatic-reading-quick' : 'dramatic-reading'`>><</popover>>
<<goto "intro-success">>
<</if>>
<</read>>
<</silently>>\The tall sentry speaks up. "Why don't you write us a poem?"
You explain that bards don't work for free.
The tall man nods. "Yes, of course, I see. Then I'll give you a gold coin. Just write us something short."
You suppose you could write and perform a ?couplet. Couplets usually ?rhyme, but they don't have to. So just a single ?stanza, and just two ?lines.
@@.tutorial;Click the ?compose_pull button below to open your notebook! Write the sentries a ?couplet and then read it to them by clicking the ?read_btn button!@@
<<include "intro-read">>You're about to read the poem to the sentries, when you realize that it isn't a ?couplet.
You decide to work on your poem a little more.
@@.tutorial;Click the ?compose_pull button below to open your notebook! Write the sentries a ?couplet and then read it to them by clicking the ?read_btn button!@@
<<include "intro-read">>"Well, that was pretty good!" the tall sentry says with a big smile. "Mighty fine indeed."
The other sentry doesn't seem impressed. "It didn't even rhyme, though," he says. "Isn't a poem meant to rhyme? I've never heard of such a thing as an unrhymed poem."
You explain that poems don't need to rhyme. The tall guard nods along, but the older sentry seems more suspicious of you by the second.
"Well, I still think a poem should rhyme," the older fellow says, apparently ignoring everything you just said.
You sigh. This guard must be a ?pedant.
You decide to work on your poem a little more.
@@.tutorial;Click the ?compose_pull button below to open your notebook! Write the sentries a ?couplet and then read it to them by clicking the ?read_btn button! Couplets don't have to ?rhyme, no poems really do, but there is a ?pedant in your audience!@@
<<include "intro-read">><<gold 1>>\
After you finish the poem, the tall sentry claps for you. "What a dramatic performance. You read as well as you write!" He hands you a single gold coin.
The older sentry squints his eyes at you for a moment, but then sighs. "Fine, fine," he says. "I guess that was okay."
You ask if you can enter the city.
The old sentry nods to the other. The tall sentry turns, and cupping his mouth, shouts loudly toward the gate. "Hey! We've got a wayfarer here! Open the gates!"
After a moment, the silent gate shrieks to life; the sound of chains straining against each other and the loud creaking of the tired wood is deafening. After several loud groaning sounds overwhelm the rest of the cacophony, the gate finally parts in the center and grinds open, scarping against the cobbled stones beneath, sending pink paint chips splintering to the ground. It only open a gap wide enough for you to squeeze through sideways before coming to rest and falling silent once more.
The two sentries step aside and wave you through. You squeeze through the gate as quickly as you can, and enter the city.
<<act "Enter the city.">><<goto "intro-4">><</act>>{title: Market District}\
Finally inside the city, you take a look around.